<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Promise.all</title>
</head>
<body>
    <script>
        /**
         * all  所有
         * all 是 Promise 函数对象身上的一个方法
         * 作用: 批量处理的 promise 实例对象的结果值
         * 参数: promise 的数组
         * 返回值: promise 对象
         *    状态: 只有当数组中每个 promise 对象的状态都为成功的时候, 返回值状态才为成功, 如果存在失败的 promise, 则 all 返回 promise 就是失败的
         *    结果值: 成功时 结果值为每个promise对象成功结果值组成的数组. 如果失败, 则失败结果值, 为最先改变失败状态的 promise 的结果值
         */
         let p1 = new Promise((resolve, reject) => {
            setTimeout(() => {
                // resolve("OK");
                reject('Error');
            }, 300);
        });

        // let p2 = Promise.resolve('Yeah');
        let p2 = Promise.reject('NoNoNo');

        let p3 = Promise.resolve('Yes');

        let result = Promise.all([p1, p2, p3]);

        console.log(result);

    </script>
</body>
</html>